]> dgit.raspbian.org Git - gnome-shell.git/commit
[StScrollBar] avoid queueing a relayout during allocation
authorOwen W. Taylor <otaylor@fishsoup.net>
Fri, 5 Mar 2010 21:17:07 +0000 (16:17 -0500)
committerOwen W. Taylor <otaylor@fishsoup.net>
Thu, 11 Mar 2010 20:08:48 +0000 (15:08 -0500)
commit524e2ca8e232f462597ccd7be58a20224e7a1166
tree1ae516c8c2adca088deefae1a281a73104aaf9ca
parent33dca51650edc15f9eb7e9bbbc17d9b6a1d873aa
[StScrollBar] avoid queueing a relayout during allocation

When an StScrollView is allocated, allocating the child would
cause the adjustment values to change, which would result in
the scrollbars queueing a relayout, which isn't allowed during
allocation.

To avoid this, instead of queueing a relayout when the adjustment
changes:

 - When we have a valid allocation already, just go ahead
   and reallocate the children.
 - Otherwise do nothing immediately and wait until we get allocated

Because the 'needs_allocation' flag in ClutterActor isn't exposed,
this requires some slightly ugly code to shadow that state locally.

https://bugzilla.gnome.org/show_bug.cgi?id=611944
src/st/st-scroll-bar.c